const app = getApp() 
const _request = require("../../utils/request.js"); 
Page({
  data: {
    mallimgUrl: app.globalData.mallimgUrl,//服务端图片前缀
    currentgoodsid: '',//商品id
    goodsDetail: '',//商品详情
    banners: [],//轮播
    current:0,
    skuList: [],//规格数组
    currentObj:'',//选中的规格
    num:1,//数量
    randomGoodsList: '',//猜你喜欢
    goodsTypeShowFlag: false,//规格弹窗
    addShopCarFlag: 0, //默认0 加入购物车1 购买2
    show1:false,//客服弹窗

    // active: 0,
    // goodsCommentList: [],//评价列表
    // commentActive: 0,
    // typeList: [],
  },
  onLoad: function (options) {
    this.setData({
      currentgoodsid:options.goodsid
    })
    this.loadGoodsDetail() //商品详情
    this.getRandomProduct() //猜你喜欢列表
    this.handleBtn() //规格列表
    // this.loadcomment() //凭借列表
  },
  // 商品详情
  loadGoodsDetail: function() {
    _request.get('/commodity/getcommodityinfo', {id: this.data.currentgoodsid }, app.globalData.mallType).then((res) => {
      if (res.data.code === 200) {
        this.setData({
          goodsDetail: res.data.data || {},
          banners: (res.data.data.albumPics || '').split(',')
        })
      }
    })
  },
  // 轮播
  currentHandle(e){
    this.setData({ current:e.detail.current })
  },
  //猜你喜欢列表
  getRandomProduct: function() {
    _request.get('/commodity/getRandomProduct', { }, app.globalData.mallType).then((res) => {
      if (res.data.code === 200 || res.data.data) {
        this.setData({
          randomGoodsList: res.data.data
        })
      }
    })
  },
  // 分享
  onShareAppMessage: function () {
    return {
      path: "pages/shopingmall/goodsdetail?goodsid=" + this.data.currentgoodsid,
    }
  },
  // 客服
  callphone(){
    wx.makePhoneCall({
      phoneNumber: '044-820-8820'
    })
  },
  // 规格弹窗
  getgoodsTypeShowFlag(e){
    this.setData({
      goodsTypeShowFlag: true,
      addShopCarFlag: e.currentTarget.dataset.type
    })
  },
  //选择规格
  changskuid(e){
    this.setData({
      num:1,
      currentObj:e.currentTarget.dataset.item
    })
  },
  // 编辑数量
  add(){
    if(this.data.num==this.data.currentObj.stock){
      wx.showToast({ title: '库存不足',icon:'none' })
      return;
    }
    this.setData({
      num:this.data.num + 1
    })
  },
  sub(){
    if(this.data.num==1){
      return;
    }
    this.setData({
      num:this.data.num - 1
    })
  },
  // 规格确认
  confirmBtnClick(){
    if (this.data.addShopCarFlag==1) {
      this.addShopCar()
    } else {
      this.buyNow()
    }
  },
  // 加入购物车
  addShopCar() {
    _request.postObj('/shoppingTrolley/saveShoppingTrolley', {
      userId: wx.getStorageSync('userId'),
      productId: this.data.currentgoodsid,
      quantity: this.data.num,
      productSkuId: this.data.currentObj.id
    }, app.globalData.mallType).then((res) => {
      if (res.data.code === 200) {
        this.setData({
          goodsTypeShowFlag:false,
        })
        wx.showToast({
          title: '添加购物车成功',
          icon: 'none',
        })
      }else{
        wx.showToast({
          title: res.data.message,
          icon: 'none',
        })
      }
    })
  },
  // 立即购买
  buyNow(item){
    _request.postObj('/shoppingTrolley/fastAdd', {
      userId: wx.getStorageSync('userId'),
      productId: this.data.currentgoodsid,
      quantity: this.data.num,
      productSkuId: this.data.currentObj.id
    }, app.globalData.mallType).then((res) => {
      if (res.data.code === 200) {
        this.setData({
          goodsTypeShowFlag:false,
        })
        wx.navigateTo({
          url: '/pages/shopingmall/order?cartId=' + res.data.data
        })
      }
    })
  },
  // 猜你喜欢跳转
  gotoNext: function(item) {
    wx.navigateTo({
      url: '/pages/shopingmall/goodsdetail' + this.getparams(item.currentTarget.dataset)
    })
  },
  getparams: function(item) {
    const list = []
    for(const key in item) {
      if (key === 'url') {
        continue;
      }
      list.push(key + '=' + item[key])
    }
    if (list.length) {
      return '?' + list.join('&')
    } else {
      return '';
    }
  },
  // 规格列表
  handleBtn() {
    const self = this
    _request.get('/commodity/getProductAttributeById', {
      id: this.data.currentgoodsid
    }, app.globalData.mallType).then((res) => {
      if (res.data.code === 200) {
        res.data.data.skuList.map(item=>{
          item.sp1 = JSON.parse(item.sp1)
        })
        this.setData({
          skuList: res.data.data.skuList,
          currentObj: res.data.data.skuList[0],
        })
      }
    })
  },
  // 跳转购物车
  gotoShopCar() {
    wx.navigateTo({
      url: '/pages/shopingmall/shopcar'
    })
  },
  // 关闭弹窗
  closeGoodsType() {
    this.setData({
      goodsTypeShowFlag: false
    })
  },
  // 客服弹窗
  getshow1(){
    this.setData({
      show1:!this.data.show1
    })
  },
  // handleSelectType(event) {
  //   const key = event.currentTarget.dataset.key
  //   const type = event.currentTarget.dataset.type
  //   let typeList = this.data.typeList
  //   typeList.forEach(e => {
  //     if (e.key !== type) {
  //       return;
  //     }
  //     e.value.forEach(item => {
  //       item.selected = item.key === key
  //     })
  //   })
    
  //   let selectSku = []
  //   typeList.forEach(e => {
  //     e.value.forEach(item => {
  //       if (item.selected) {
  //         selectSku.push(item.key)
  //       }
  //     })
  //   })
   
  //   let currentObj = {}
  //   this.data.skuList.forEach(e => {
  //     const sp = JSON.parse(e.sp1)
  //     const flag = sp.every(item => {
  //       return selectSku.includes(item.value)
  //     })
  //     if (flag) {
  //       currentObj = e
  //     }
  //   })
  //   this.setData({
  //     typeList: typeList,
  //     currentObj: currentObj
  //   })
  // },
  // selectType(event) {
  //   const currentIndex = event.currentTarget.dataset.index
  //   let list = this.data.typeList
  //   let currentObj = {}
  //   list.forEach((e, index) => {
  //     if (index === currentIndex) {
  //       e.selected = true
  //       currentObj = e
  //     } else {
  //       e.selected = false
  //     }
  //   })
  //   this.setData({
  //     typeList: list,
  //     currentType: currentObj
  //   })
  // },
  // addButNum() {
  //   let buyNum = this.data.buyNum
  //   buyNum = buyNum + 1
  //   this.setData({
  //     buyNum: buyNum
  //   })
  // },
  // changeActive: function(index) {
  //   // console.log(index)
  //   this.setData({
  //     active: index.detail.index
  //   })
  //   this.loadcomment()
  // },
  // switchComment(event) {
  //   const id = event.currentTarget.dataset.id
  //   this.setData({
  //     commentActive: id
  //   })
  //   this.loadcomment()
  // },
  // loadcomment: function() {
  //   const self = this
  //   _request.get('/commodity/getMallCommentById', {
  //     id: this.data.currentgoodsid,
  //     status: this.data.commentActive
  //   }, app.globalData.mallType).then((res) => {
  //     console.log(res)
  //     if (res.data.code === 200) {
  //       let list = res.data.data.rows || []
  //       if (list.length) {
  //         list.forEach(ele => {
  //           if(ele.pics) {
  //             ele.picList = ele.pics.split(',')
  //           } else {
  //             ele.picList = []
  //           }
  //         })
  //       }
  //       self.setData({
  //         goodsCommentList: list
  //       })
  //     }
  //   })
  // },
  // addBuyNum() {
  //   if (this.data.currentObj.quantity < this.data.currentObj.stock) {
  //     this.data.currentObj.quantity = this.data.currentObj.quantity + 1
  //   }
  // }
})